# -*- coding: UTF-8 -*-
import configparser
import os.path
import pickle

"""
os模块和pathlib模块都提供了跨平台的方法来处理文件路径。
os.path.abspath(__file__) 返回当前脚本的绝对路径。
os.path.dirname(path) 返回路径的目录名。
os.path.join(path, *paths) 将一个或多个路径组合并返回。
os.path.exists(path) 检查路径是否存在。
Path(__file__).parent 使用 pathlib 模块获取当前脚本的目录。
file_path.exists() 检查路径是否存在。

选择 os 或 pathlib 模块主要取决于你的个人偏好和项目需求。 pathlib 更加面向对象，并且提供了一些更方便的方法来处理路径操作。
"""

"""
读取配置文件：

使用 configparser.ConfigParser() 创建一个配置解析器。
使用 config.read('config.ini') 读取配置文件。
通过 config['section']['option'] 获取配置项的值。
"""
# 创建配置解析器
config = configparser.ConfigParser()

# 读取配置文件
config.read('config.ini')

# 获取配置项
base_url = config['settings']['base_url']
apikey = config['settings']['api_key']

print(base_url, apikey)

# 获取当前脚本所在的目录
currentDir = os.path.dirname(os.path.abspath(__file__))
cookieFileName = 'cookies.txt'
filePath = os.path.join(currentDir, cookieFileName)
# D:\wwwroot\myzx_py_project\src\example\file\cookies.txt
cookies = ""
if os.path.exists(filePath):
    with open(filePath, 'rb') as f:
        cookies = f.read()
        print(cookies)
else:
    print(f"Cookie file {cookieFileName} not found")
    print(f"文件 {cookieFileName} 不存在于 {currentDir} 目录中")

"""
使用 pickle 模块将 cookies 序列化并保存到文件。
使用 pickle 模块从文件中读取 cookies 并更新会话。
"""
# 将cookie保存到cookies.pkl
cookie_file_path = 'cookies.pkl'
with open(cookie_file_path, 'wb') as f:
    pickle.dump(cookies, f)
# 从cookies.pkl中读取cookie
cookies = pickle.load(open(cookie_file_path, 'rb'))
print(cookies)
